#pragma once
#include "igamestate.h"
#include "../SGD Wrappers/SGD_Math.h"
#include "../SGD Wrappers/CSGD_Direct3D.h"
#include "../SGD Wrappers/CSGD_TextureManager.h"
#include "../SGD Wrappers/CSGD_DirectInput.h"
#include "../SGD Wrappers/CSGD_XAudio2.h"
#include "../Bitmap Font/BitmapFont.h"
#include "../SGD Wrappers/tinyxml.h"

class CIntroState : public IGameState
{
public:
	static CIntroState* GetInstance(void);
//IGameState Interface======================
	virtual void Enter(void);
	virtual void Exit(void);
	virtual bool Input(void);
	virtual void Update(float fElapsedTime);
	virtual void Render(void);

private:
//trilogy of evil===========================
	CIntroState(void);
	virtual ~CIntroState(void);
	CIntroState(const CIntroState&);
	CIntroState& operator=(const CIntroState&);

	CSGD_Direct3D*			m_pD3D;
	CSGD_TextureManager*	m_pTM;
	CSGD_DirectInput*		m_pDI;
	CSGD_XAudio2*			m_pXA;

	CBitmapFont*			m_pFont;
};